package org.example.domain.shop.service;


import org.example.domain.shop.model.entity.ProductEntity;

import java.math.BigDecimal;
import java.util.List;

/**
 * @author yinghuashen
 * @version 1.0
 * @description
 * @date 2025/3/6 22:06
 */

public interface IShopService {

    /**
     * 根据商品id获取商品信息
     *
     * @param productId
     * @return 商品信息
     */
    ProductEntity getProductById(String productId);

    /**
     * 根据关键字获取商品列表
     *
     * @param keyword
     * @return 商品列表
     */
    List<ProductEntity> getProductListByKeyword(String keyword, Integer pageNum, Integer pageSize);


    /**
     * 计算商品折扣价格
     *
     * @param productId
     * @param originalPrice
     * @return 折扣价格
     */
    BigDecimal calculateDiscountPrice(String productId, BigDecimal originalPrice);

}
